package com.example.mybatis_plus.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.util.Date;

/**
 * @author GJH
 * @version V1.0
 * @Package com.example.mybatis_plus.entity
 * @date 2022/4/27 21:10
 * @Copyright © XXXX-XXXX  搬砖工程师
 */
@Data
public class User {
    //MP默认的主键策略：ASSIGN_ID默认是雪花算法
   @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    private String name;
    private Integer age;
    private String email;

    //在数据表中添加类型，在实体类中创建属性
    //在实体类要进行自动填充的属性添加注解
    @TableField(fill = FieldFill.INSERT)
    private Date createTime; //create_time,第二个首字母大写
    @TableField(fill = FieldFill.INSERT_UPDATE)   //添加的时候设置值
    private Date updateTime;

    //3、创建类实现接口，实现接口的两个方法，一个方法添加的时候执行，一个方法修改的时候执行，设置添加什么值

    //乐观锁，通过版本号的不同来实现
    @Version
    @TableField(fill = FieldFill.INSERT)
    private Integer version ;

    @TableLogic
    private Integer deleted;


}
